package com.example.company.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.company.entity.Users;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 存储系统用户信息Mapper接口
 *
 * @author ruoyi
 * @date 2024-12-30
 */
@Mapper
public interface UsersMapper extends BaseMapper<Users> {
	/**
	 * 查询存储系统用户信息
	 *
	 * @param UserID 存储系统用户信息主键
	 * @return 存储系统用户信息
	 */
	Users selectUsersByUserID(int UserID);
	
	/**
	 * 查询存储系统用户信息列表
	 *
	 * @param users 存储系统用户信息
	 * @return 存储系统用户信息集合
	 */
	List<Users> selectUsersList(Users users);
	
	/**
	 * 新增存储系统用户信息
	 *
	 * @param users 存储系统用户信息
	 * @return 结果
	 */
	int insertUsers(Users users);
	
	/**
	 * 修改存储系统用户信息
	 *
	 * @param users 存储系统用户信息
	 * @return 结果
	 */
	int updateUsers(Users users);
	
	/**
	 * 删除存储系统用户信息
	 *
	 * @param UserID 存储系统用户信息主键
	 * @return 结果
	 */
	int deleteUsersByUserID(Long UserID);
	
	/**
	 * 批量删除存储系统用户信息
	 *
	 * @param UserIDs 需要删除的数据主键集合
	 * @return 结果
	 */
	int deleteUsersByUserIDs(Long[] UserIDs);
	
	
	/**
	 * 员工登录
	 *
	 * @param users
	 * @return
	 */
	@Select("select count(*) from company.users where username=#{username} and Password=#{password}")
	int loginuser(Users users);
	
	
	/**
	 * 查询员工
	 *
	 * @param
	 * @return
	 */
	@Select("select * from company.users where Role=3")
	List<Users> selectByRole();
	
	/**
	 * 查找部门员工
	 *
	 * @return
	 */
	@Select("select * from company.users where Role=2")
	List<Users> selectDepartment();
	
	@Select("select *from company.users")
	List<Users>selectall();
	
	List<Users> selectUsersList2(Users users, Integer departmentid);
}
